package com.jic.product.model.entity;
import java.util.Date;
import com.jic.product.entity.base.BaseEntity;
import com.jic.product.pojo.MCategory;
import com.jic.product.pojo.MProductBrandRequest;
import com.jic.product.pojo.MProductTest;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import lombok.NoArgsConstructor;
@Data
@NoArgsConstructor
@ApiModel(description = " m_product ")
public class MProduct extends BaseEntity {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(notes = "商家商品id")
    private Long id;

    @ApiModelProperty(notes = "商品编码")
    private String code;

    @ApiModelProperty(notes = "体积(cm^3)")
    private BigDecimal productVolume;

    @ApiModelProperty(notes = "保质期天数")
    private Integer shelflifeDays;

    @ApiModelProperty(notes = "包退天数")
    private Integer returnDays;

    @ApiModelProperty(notes = "第三方商品编码")
    private String thirdProductCode;

    @ApiModelProperty(notes = "英文名称")
    private String englishName;

    @ApiModelProperty(notes = "1-普通商品;2-系列子品3.sku商品")
    private Integer typeOfProduct;

    @ApiModelProperty(notes = "系列虚品的Id")
    private Long parentId;

    @ApiModelProperty(notes = "商品毛重(g)")
    private BigDecimal grossWeight;

    @ApiModelProperty(notes = " 副标题(商家自定义名称)")
    private String subtitle;

    @ApiModelProperty(notes = "货号")
    private String artNo;

    @ApiModelProperty(notes = "包换天数")
    private Integer replacementDays;

    @ApiModelProperty(notes = "商品最大净重(g)")
    private BigDecimal netWeight;

    @ApiModelProperty(notes = "商品最小净重(g)")
    private BigDecimal netWeightStart;

    @ApiModelProperty(notes = "备注")
    private String remark;

    @ApiModelProperty(notes = "长度(cm)")
    private BigDecimal productLength;

    @ApiModelProperty(notes = "运费模板id")
    private Long freightTemplateId;

    @ApiModelProperty(notes = "高度(cm)")
    private Double productHeight;

    @ApiModelProperty(notes = "商品类型:1-常规商品;2卡券、3海购、4赠品、10实体卡、11虚拟卡、20券、 5生鲜产品、6增值服务、7其他、21积分商品;31-称重商品;)")
    private Integer type;

    @ApiModelProperty(notes = "商品中文名称")
    private String chineseName;

    @ApiModelProperty(notes = "商品来源类型:1-平台;2-商家;")
    private Integer sourceType;

    @ApiModelProperty(notes = "保修天数")
    private Integer guaranteeDays;

    @ApiModelProperty(notes = "审核状态:0-待提交;1-审核中;2-审核通过;3-审核不通过;4-永久下架;")
    private Integer status;

    @ApiModelProperty(notes = "宽度(cm)")
    private BigDecimal productWidth;

    @ApiModelProperty(notes = "渠道编码")
    private String channelCode;

    @ApiModelProperty(notes = "渠道名称")
    private String channelName;

    @ApiModelProperty(notes = "销售计量单位主键id")
    private Long saleCalcUnitId;

    @ApiModelProperty(notes = "版本号:默认0, 每次更新+1")
    private Integer versionNo;

    @ApiModelProperty(notes = "审核原因")
    private String auditMessage;

    @ApiModelProperty(notes = "类目表外键")
    private Long categoryId;

    @ApiModelProperty(notes = "品牌Id")
    private Long brandId;

    @ApiModelProperty(notes = "上下架状态 0-下架，1-上架")
    private Integer canSale;

    @ApiModelProperty(notes = "商品数据类型:1-运营商品;2-商家商品;3-店铺商品;4、第三方商家商品；")
    private Integer dataType;

    @ApiModelProperty(notes = "商品子形式，1-自建子品，2-聚合子品")
    private Integer subTypeOfProduct;

    @ApiModelProperty(notes = "仓库类型:0-有实体仓;1-无实体仓;")
    private Integer warehouseType;

    @ApiModelProperty(notes = "副标题(二语言)")
    private String subtitleLan2;

    @ApiModelProperty(notes = "价格策略:2-店铺;3-商家;4-运营;")
    private Integer priceLevel;

    @ApiModelProperty(notes = "组合商品类型:0-固定组合;1-可选组合;")
    private Integer combineType;

    @ApiModelProperty(notes = "首次上架时间")
    private Date firstShelfTime;

    @ApiModelProperty(notes = "商品资料引用ID, 如果是门店商品 ref_id =商家商品ID（）")
    private Long refId;

    @ApiModelProperty(notes = "产地")
    private String placeOriginName;

    @ApiModelProperty(notes = "是否支持发票")
    private Integer invoice;

    @ApiModelProperty(notes = "商品条形码")
    private String barCode;

    @ApiModelProperty(notes = "创建人名称")
    private String creatorName;

    @ApiModelProperty(notes = "更新名称")
    private String updaterName;

    @ApiModelProperty(notes = "是否是BOM商品;1-是; 0-否;")
    private Integer bomFlag;

    @ApiModelProperty(notes = "是否是Pill商品;1-是; 0-否;")
    private Integer pillFlag;

    @ApiModelProperty(notes = "生命周期  1 初始期-2培养期-3上升期-4衰退期-5清退期-6屏蔽期")
    private Long lifeCycle;

    @ApiModelProperty(notes = "库存显示 1.基本款库存; 2.校标款库存;")
    private Integer inventoryDisplay;

    @ApiModelProperty(notes = "商品销量")
    private Integer saleNum;

    @ApiModelProperty(notes = "参数JSON")
    private String parameterJson;

    @ApiModelProperty(notes = "协议上浮")
    private BigDecimal agreementOnFloatingAtio;

    @ApiModelProperty(notes = "微众价")
    private BigDecimal marketPrice;

    @ApiModelProperty(notes = "从库")
    private MProductTest mProductTest;

    @ApiModelProperty(notes = "品牌表")
    private MProductBrandRequest request;

    @ApiModelProperty(notes = "类目表")
    private MCategory mCategory;
    
    @ApiModelProperty(notes = "积分价")
    private BigDecimal integralNum;


}

